\documentclass[a4paper]{ctexart}
\usepackage[hidelinks]{hyperref}%目录
\usepackage{listing}
\usepackage{xcolor}
\usepackage{xeCJK} %导入这个宏包，就可以支持中文
\usepackage{cite}%文献引用
\usepackage{graphicx}
\usepackage{amsthm,amsmath,amssymb,amsfonts}%数学命题，数学字母，排版
\usepackage[a4paper,left=25.4mm,right=25.4mm,top=29.8mm,bottom=29.8mm]{geometry}

\pagestyle{myheadings}
\numberwithin{equation}{section}%以section编号equation

%数学命题环境定义 
%证明环境直接用proof
\theoremstyle{plain} \newtheorem{thm}{定理}[section]
\theoremstyle{plain} \newtheorem*{lemma}{引理}
\theoremstyle{plain} \newtheorem*{prop}{prop}
\theoremstyle{plain} \newtheorem*{property}{性质}
\theoremstyle{definition} \newtheorem*{define}{定义}
\theoremstyle{plain} \newtheorem*{cor}{cor}
\theoremstyle{plain} \newtheorem{eg}{例}


\title{Homework1}
\author{陈宇涛，强数2101,3210102287}


\begin{document}
\maketitle
\section{测试说明}
在src文档中用终端打开，输入make编译代码，输入make run即可在终端上看到答案。\\

\section[short]{代码}
\begin{eg}
\begin{flushleft}
        ~~~~构建了一个抽象函数类class Function,而后的每一个所需要的函数都写成它的子类。
    能够实现一点$x_{0}$的$f(x_{0})$,
    以及导函数$diff(x_{0})$,这里的导函数可以选择精确输入数学表达式
    ，也可以用已经写好的差分公式来计算.\\

        ~~~~构建了用来求根的父类class EquationSolver,子类要求重写求根solve().
    分别可以用class BisectionSolver(二分法求根),
    class NewtonSolver(牛顿法求根),class SecandSolver(割线法求根)
\end{flushleft}
\end{eg}

\section[short]{数据分析}
\begin{eg}
\begin{flushleft}
    三种迭代的精度均较高，且在题目范围内效率尚可，总体而言二分法的速度最慢。 \\
    相比于牛顿迭代，Secant迭代的收敛位置依赖两个初始位置的选取，其不一定会走到我们想要的方向。\\
\end{flushleft}
\end{eg}

\end{document}

